#define  _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

//double fact(int n)
//{
//	int i = 0;
//	double sum = 1.0;
//	for (i = 1; i <= n; i++)
//	{
//		sum *= i;
//	}
//	return sum;
//}
//double mypow(double x, int n)
//{
//	int i = 0;
//	double sum = 1.0;
//	for (i = 1; i <= n; i++)
//	{
//		sum *= x;
//	}
//	return sum;
//}
//int main()
//{
//	double x = 0.0;
//	int n = 0;
//	scanf("%lf %d", &x, &n);
//	double sum = 0.0;
//	int i = 0;
//	int temp = 1;
//	for (i = 1; i <= n; i++)
//	{
//		sum += temp * mypow(x, i) / fact(i);
//		temp = -temp;
//	}
//	double ret = fact(n);
//	printf("%.4lf\n", sum);
//
//	return 0;
//}

#include<stdlib.h>
#include<math.h>



//int main()
//{
//	int x = 0;
//	scanf("%d", &x);
//	double sum = 0;
//	if (x < 0)
//		sum = abs(x);
//	else if (x >= 0 && x < 2)
//		sum = sqrt(x + 1);
//	else if (x >= 2 && x < 4)
//		sum = pow(x + 2, 5);
//	else if (x >= 4)
//		sum = 2 * x + 5;
//	printf("%.2lf\n", sum);
//
//	return 0;
//}


//int ctof(int c)
//{
//	int f = 0;
//	f = 32 + c * 9 / 5;
//	return f;
//}
//int main()
//{
//	int c = 0;
//	for (c = -100; c <= 150; c += 5)
//	{
//		printf("c=%d->f=%d\n", c, ctof(c));
//	}
//
//	return 0;
//}


//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int arr[6][6] = { 0 };
//	int i = 0;
//	int j = 0;
//	int x = 0;
//	int y = 0;
//	int arr2[6][6] = { 0 };
//	for (i = 0; i < n; i++)
//	{
//		for (j = 0; j < n; j++)
//		{
//			scanf("%d", &arr[i][j]);
//			arr2[i][j] = abs(arr[i][j]);
//		}
//	}
//	int max = arr2[0][0];
//	for (i = 0; i < n; i++)
//	{
//		for (j = 0; j < n; j++)
//		{
//			if (arr2[i][j] > max)
//			{
//				max = arr2[i][j];
//				x = i;
//				y = j;
//			}
//		}
//	}
//	printf("%d %d %d\n", arr[x][y], x + 1, y + 1);
//
//	return 0;
//}


//int main()
//{
//	int score = 0;
//	scanf("%d", &score);
//	int arr[3] = { 0 };
//	while (score > 0)
//	{
//		if (score >= 85)
//			arr[0]++;
//		else if (score >= 60 && score <= 84)
//			arr[1]++;
//		else if (score < 60)
//			arr[2]++;
//		scanf("%d", &score);
//	}
//	printf(">=85:%d\n", arr[0]);
//	printf("60-84:%d\n", arr[1]);
//	printf("<60:%d\n", arr[2]);
//
//	return 0;
//}



//double fact(int n)
//{
//	int i = 0;
//	double sum = 1;
//	for (i = 1; i <= n; i++)
//	{
//		sum *= i;
//	}
//	return sum;
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int i = 0;
//	double div = 0.0;
//	double sum = 0.0;
//	for (i = 1; i <= n; i++)
//	{
//		sum += 1 / fact(i);
//	}
//	printf("sum=%.5lf\n", sum);
//
//	return 0;
//}


int main()
{
	int n = 0;
	int full = 0;
	int reminder = 0;
	int sum = 0;
	while (scanf("%d", &n) != EOF && n != 0)
	{
		sum = 0;
		while (n >= 3)
		{
			full = n / 3;
			sum += full;
			reminder = n % 3;
			n = full + reminder;
			if (n == 2)
			{
				sum++;
				n = 0;
			}
		}
		if(sum != 0)
			printf("%d\n", sum);
	}
	

	return 0;
}


